package com.hbnu.common.entity;

/**
 * 打卡项实体类
 */

public class CheckInItem {
    private final int itemId;
    private final String itemName;
    private final String username;
    private final int totalDays;
    private final int continuousDays;
    private final boolean isCheckedInToday;

    /**
     * 构造函数，创建一个打卡项实体对象。
     *
     * @param itemId           打卡项的ID
     * @param itemName         打卡项的名称
     * @param username         打卡项所属的用户名
     * @param totalDays        打卡项的总打卡天数
     * @param continuousDays   打卡项的连续打卡天数
     * @param isCheckedInToday 是否今日已打卡
     */
    public CheckInItem(int itemId, String itemName, String username, int totalDays, int continuousDays, boolean isCheckedInToday) {
        this.itemId = itemId;
        this.itemName = itemName;
        this.username = username;
        this.totalDays = totalDays;
        this.continuousDays = continuousDays;
        this.isCheckedInToday = isCheckedInToday;
    }

    /**
     * 获取打卡项的名称。
     *
     * @return 打卡项的名称
     */
    public String getItemName() {
        return itemName;
    }

    /**
     * 获取打卡项的ID。
     *
     * @return 打卡项的ID
     */
    public int getItemId() {
        return itemId;
    }

    /**
     * 获取打卡项所属的用户名。
     *
     * @return 打卡项所属的用户名
     */
    public String getUsername() {
        return username;
    }

    /**
     * 获取打卡项的总打卡天数。
     *
     * @return 打卡项的总打卡天数
     */
    public int getTotalDays() {
        return totalDays;
    }

    /**
     * 获取打卡项的连续打卡天数。
     *
     * @return 打卡项的连续打卡天数
     */
    public int getContinuousDays() {
        return continuousDays;
    }

    /**
     * 获取今日是否已打卡。
     *
     * @return 今日是否已打卡
     */
    public boolean isCheckedInToday() { return isCheckedInToday; }
}
